| 1 | [목차] |
|---|
| 2 | == 개요 == |
|---|
| 3 | [[파일:aMtmGK3.jpg]] |
|---|
| 1 | 4 | |
|---|
| 5 | Ruby on Rails는 [[Ruby]]를 사용하는 [[웹 프레임워크]]로 덴마크의 David Heinemeier Hansson이 [[오픈 소스]]로 만들었다. 줄여서 Rails나 RoR이라고도 부른다. 풀 스택 웹 프레임워크이고, non full-stack 웹 프레임워크로는 Sinatra 등이 있다. |
|---|
| 6 | |
|---|
| 7 | 루비온 레일즈의 이후 등장한 거의 모든 풀스택 웹 프레임워크는 Rails의 디자인에 영향을 받았다고 해도 과언이 아닐 정도이다. [[Python]]의 [[Django]]나 [[PHP]]의 [[라라벨|Laravel]]이 그 영향을 받아 설계되었다. MVC 모델 패턴을 채택하고 있으며, 사용하는 언어가 [[Ruby]]인지라 고급지고 간결한 코드를 작성할 수 있다. 특히 애자일 프로세스에 초점을 맞추는 스타트업 기업들이 많이 채택하였다. |
|---|
| 8 | |
|---|
| 9 | 다만 2016년 부터 [[Node.js]]라는 신흥 강호가 [[갑툭튀]]해 점유율이 바짝 쫓기는 상황이다. 2020년 이후로는 전세계적으로 Node.js를 더 많이 쓴다. |
|---|
| 10 | |
|---|
| 11 | == 특징 == |
|---|
| 12 | === 장점 === |
|---|
| 13 | * 언어의 특성이 애자일에 초점이 맞춰져 있기 때문에 생산성이 높다. |
|---|
| 14 | * 확장성과 이식성이 높다.[* 프레임워크의 '확장성(Scalability)'이란 시스템의 스펙이 변경되어도 그에 맞추어 기능이 계속 동작하게끔 만들 수 있는지의 여부를 의미한다. 시스템에서 '확장성'은 두 가지로 나뉘는데, 특정한 (서버) 하드웨어의 CPU나 RAM을 업그레이드하는 것을 수직적 확장성이라고 하고, 아키텍처 자체를 늘리는 것(ex. 단일 서버 → 서버/로드 밸런서/DB 인스턴스로 분할)을 수평적 확장성이라고 한다. '이식성'은 다양한 운영 체제에서 사용될 수 있는지의 여부이다.] |
|---|
| 15 | * 데이터베이스 작업할 때 엑티브레코드 패턴을 적용한 ORM을 도입하여 편리하다. |
|---|
| 16 | * 세부적인 설정이 적은편이다. |
|---|
| 17 | |
|---|
| 18 | === 단점 === |
|---|
| 19 | * 개발자가 부족하다. 물론 이것은 국내의 얘기. |
|---|
| 20 | * 파이썬의 장고만큼 속도가 느리다. |
|---|
| 21 | * 암시적 규약이 많다. [* 프로젝트 초반에는 빠른 개발이 가능해 장점일 수 있지만 초반을 지나면 사이트이펙트를 만들 가능성이 급격히 커진다] |
|---|
| 22 | == 여담 == |
|---|
| 23 | * Ruby를 모르는 사람도 강좌 몇 개를 보면 쓸만한 블로그 하나를 만들 수 있을 정도로 쉽고 빠르게 웹 애플리케이션을 제작할 수 있다. |
|---|
| 24 | * 빠르게 서비스를 개발해야 하는 스타트업 회사에서 많이 사용한다. 하지만 한국에서는 Ruby라는 언어 자체가 굉장히 마이너하기 때문에 요즘에는 PHP의 [[라라벨]]을 쓰거나, [[Python]] 장고, [[JavaScript]] 를 선호하는 경향이 있다. |
|---|
| 25 | * 성능 문제가 있다고 하는데, 파이썬보다는 느리지만 깃허브, 그루폰, --트위터--[* Java로 변경하였다.],루비가 일본인이 개발한 언어라 일본에서는 개발자도 많고 대형회사들도 사용한다. 사실 하드웨어 자원을 빡세게 활용하는 애플리케이션(게임 등)이 아닌 이상, 성능은 언어의 속도보다는 데이터베이스를 얼마나 빠르게 가져오느냐 등 외부적 요소에 영향을 더 크게 받는다. |
|---|
| 26 | * [[Python]]의 [[Flask]]에 해당하는 [[Ruby]]의 마이크로 웹 프레임워크는 [[Sinatra]]이다. |
|---|
| 27 | |
|---|
| 28 | == Rails로 만들어진 한국 내 서비스 현황 == |
|---|
| 29 | 구글에 {{{ inurl:users/sign_in }}} 키워드로 검색해보면 레일즈를 사용중인 사이트들을 확인할 수 있다. |
|---|
| 30 | *그루미 |
|---|
| 31 | *더누보(http://the-nuvo.com) |
|---|
| 32 | *리노트 |
|---|
| 33 | * 마이리얼트립 |
|---|
| 34 | *망고플레이트 |
|---|
| 35 | * 모아폼 |
|---|
| 36 | *밸류옵션 |
|---|
| 37 | * 배틀코믹스 |
|---|
| 38 | *볼링고 |
|---|
| 39 | *산타 포 토익! |
|---|
| 40 | *샤샤건건 |
|---|
| 41 | *센트비 |
|---|
| 42 | *스냅샵 |
|---|
| 43 | *스탬프팡 |
|---|
| 44 | *스트라입스 |
|---|
| 45 | *아이노알바 |
|---|
| 46 | *아이엠스쿨 |
|---|
| 47 | *아임8 |
|---|
| 48 | *연두 |
|---|
| 49 | *에이트크루즈 |
|---|
| 50 | *오늘의집 |
|---|
| 51 | *왓챠 |
|---|
| 52 | *유에프오팩토리 |
|---|
| 53 | * 유저해빗 |
|---|
| 54 | *응답하라 국회의원 |
|---|
| 55 | *이음 |
|---|
| 56 | *자소설 |
|---|
| 57 | *잡플래닛 |
|---|
| 58 | * 증권플러스 인사이트 |
|---|
| 59 | * 채팅캣 |
|---|
| 60 | *카카오 |
|---|
| 61 | *커피한잔 (https://withcoffee.app) |
|---|
| 62 | *캐시슬라이드 |
|---|
| 63 | *코드라이언 |
|---|
| 64 | *코드스터디 |
|---|
| 65 | *코드잇 |
|---|
| 66 | *크리마(https://www.cre.ma) |
|---|
| 67 | *클레비 |
|---|
| 68 | *클래스팅 |
|---|
| 69 | *텀블벅 |
|---|
| 70 | *토스 |
|---|
| 71 | *트라이캣치 |
|---|
| 72 | *파이브 락스 |
|---|
| 73 | *파크 히어 |
|---|
| 74 | *당근마켓 |
|---|
| 75 | *해먹남녀 |
|---|
| 76 | *호텔박사 |
|---|
| 77 | * 필디 |
|---|
| 78 | |
|---|
| 79 | == 관련 문서 == |
|---|
| 80 | * [[Django]] |
|---|
| 81 | * [[Flask]] |
|---|
| 82 | |
|---|
| 83 | [[분류:웹 프레임워크]] |
|---|
| 84 | |
|---|